arm/vgic: Change fixed number of mmio handlers to variable number
authorShanker Donthineni <shankerd@codeaurora.org>
Wed, 20 Jul 2016 14:00:56 +0000 (09:00 -0500)
committerStefano Stabellini <sstabellini@kernel.org>
Tue, 26 Jul 2016 22:12:43 +0000 (15:12 -0700)
commit96d1be3788805257690a58dbea65d4d6b7ac30dc
tree76aa20d1e34afa83ce130b1296cc51cc41d79b4c
parent8047e090f42a39bda911f6b2e81fdab12603b64a
arm/vgic: Change fixed number of mmio handlers to variable number

Compute the number of mmio handlers that are required for vGICv3 and
vGICv2 emulation drivers in vgic_v3_init()/vgic_v2_init(). Augment
this variable number of mmio handlers to a fixed number MAX_IO_HANDLER
and pass it to domain_io_init() to allocate enough memory.

New code path:
 domain_vgic_register(&count)
   domain_io_init(count + MAX_IO_HANDLER)
     domain_vgic_init()

Signed-off-by: Shanker Donthineni <shankerd@codeaurora.org>
Acked-by: Julien Grall <julien.grall@arm.com>
xen/arch/arm/domain.c
xen/arch/arm/vgic-v2.c
xen/arch/arm/vgic-v3.c
xen/arch/arm/vgic.c
xen/include/asm-arm/vgic.h